/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package br.com.cursojava.client.components;

import br.com.cursojava.client.CadBaseGWT;
import br.com.cursojava.client.IPrincipal;
import br.com.cursojava.client.Principal;
import br.com.cursojava.client.dao.livro.LivroDAO;
import br.com.cursojava.client.dao.livro.LivroTGWT;
import com.extjs.gxt.ui.client.event.ButtonEvent;
import com.extjs.gxt.ui.client.widget.Info;
import com.extjs.gxt.ui.client.widget.MessageBox;
import com.extjs.gxt.ui.client.widget.TabItem;
import com.extjs.gxt.ui.client.widget.TabPanel;
import com.extjs.gxt.ui.client.widget.Window;
import com.extjs.gxt.ui.client.widget.form.LabelField;
import com.extjs.gxt.ui.client.widget.form.NumberField;
import com.extjs.gxt.ui.client.widget.form.TextField;
import com.extjs.gxt.ui.client.widget.layout.TableLayout;

/**
 *
 * @author p1520009
 */
public class CadLivro extends CadBaseGWT implements IPrincipal{
    
    private TextField<String> tfNome = new TextField<String>();
    private TextField<String> tfAutor = new TextField<String>();
    private Principal principal;

    public CadLivro() {
        setHeaderVisible(false);
        getCpCentro().setHeaderVisible(false);
        getCpSul().setVisible(false);

        TableLayout tl = new TableLayout(2);
        tl.setCellSpacing(5);
        getCpCentro().setLayout(tl);
        
        
        getCpCentro().add(new LabelField("Título:"));
        getCpCentro().add(tfNome);
        getCpCentro().add(new LabelField("Autor:"));
        getCpCentro().add(tfAutor);
        getCpCentro().add(btnCadastrar);
        getCpCentro().add(btnFechar);

        
        tfNome.setAllowBlank(false);

        tfAutor.setAllowBlank(false);


    }

    @Override
    public void cadastrar(ButtonEvent be) {

        if (!tfNome.isValid() || !tfAutor.isValid()) {
            MessageBox.alert("ATENÇÃO", "Campos possuem informações inválidas!", null);
            return;
        }
        LivroTGWT livroTGWT = new LivroTGWT();
        
           
           livroTGWT.setNome(tfNome.getValue());
           livroTGWT.setAutor(tfAutor.getValue());
           LivroDAO livroDAO = new LivroDAO();
           livroDAO.inserir(livroTGWT);
           Info.display("Operação", "Livro cadastrado com Sucesso");
           ConsultaLivro consultaLivro = new ConsultaLivro();
           consultaLivro.setPrincipal(principal);
           principal.getTpAbas().alterarTabLivros(consultaLivro);
        
    }

    @Override
    public void fechar(ButtonEvent be) {
        ConsultaLivro consultaLivro = new ConsultaLivro();
        consultaLivro.setPrincipal(principal);
        principal.getTpAbas().alterarTabLivros(consultaLivro);
    }

    @Override
    public void setPrincipal(Principal principal) {
        this.principal = principal;
    }

    /**
     * @return the principal
     */
    public Principal getPrincipal() {
        return principal;
    }


}